#ifndef QBCIRENDER_H
#define QBCIRENDER_H

#include <QPainter>


class QBciRender : public QObject
{
 Q_OBJECT

public:
    explicit QBciRender(QObject *parent = nullptr);
    ~QBciRender();

public:
    enum WaveType {square, sin, userDefined};

    enum RenderType {opacity, screencontroller};

    virtual void stylePaint(QPainter *painter) = 0;

    virtual void setWaveType(WaveType wave) = 0;

    virtual void setEnableWave(const bool &flag, const int &ID) = 0;

    virtual void setFreq(const int &ID, const double &freq) = 0;

    virtual void startFlick() = 0;

    virtual void stopFlick() = 0;

};

#endif // QBCIRENDER_H
